﻿using System;

using HttpWebSocket.Model;

namespace HttpWebSocket.Interface
{
    internal interface IClientSessionCollect
    {
        void ClearSession();
        ISession CreateSession(IWebSocketClient client);
        ISession GetSession(Guid sessionId);
        ISession Offline(Guid sessionId);
        void Cancel(Guid accreditId, string error);
        IClientSession[] FindSession(Guid accreditId);
        IClientSession[] FindSession(Func<ISessionBody, bool> find);
        IClientSession[] GetSession(Guid[] sessionId);
        IClientSession FindOnlineSession(Guid accreditId, string name);
    }
}